from core.basic.skill import 技能
from core.basic.character import Character
from core.basic.skill import 主动技能, 被动技能


class 技能0(被动技能):
    名称 = '基础精通'
    倍率 = 1.0
    所在等级 = 1
    等级上限 = 200
    关联技能 = ['罗网投掷']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(self.倍率 * (0.463 + 0.089 * self.等级), 5)


class 技能1(主动技能):
    名称 = '抛沙'
    所在等级 = 15
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [15, 154]
    data0 = [0, 1434, 1600, 1777, 1953, 2129, 2297, 2470, 2644, 2820, 2985, 3163, 3332, 3510, 3678, 3857, 4026, 4197, 4368, 4541, 4719, 4887, 5058, 5234, 5405, 5581, 5752, 5927, 6102, 6272, 6447, 6621, 6796, 6965, 7137, 7313, 7485, 7659, 7824, 8004, 8177, 8351, 8520, 8700, 8870, 9036, 9210, 9385, 9548, 9727, 9903, 10078, 10254, 10422, 10595, 10771, 10941, 11111, 11290, 11460, 11631, 11805, 11980, 12150, 12325, 12499, 12672, 12845, 13012, 13190, 13363]
    hit0 = 1
    power0 = 1.5  # 后街战术
    CD = 3.0
    TP成长 = 0.10
    TP上限 = 7


class 技能2(主动技能):
    名称 = '毒瓶投掷'
    所在等级 = 15
    等级上限 = 70
    学习间隔 = 3
    等级精通 = 60
    MP = [50, 420]

    # 不强化
    data0 = [0, 519, 604, 685, 768, 850, 934, 1019, 1101, 1184, 1265, 1353, 1432, 1515, 1599, 1681, 1764, 1847, 1929, 2014, 2097, 2179, 2263, 2344, 2426, 2509, 2592, 2676, 2762, 2841, 2926, 3009, 3093, 3176, 3259, 3339, 3423, 3507, 3590, 3673, 3755, 3838, 3920, 4003, 4087, 4171, 4254, 4335, 4417, 4501, 4587, 4668, 4750, 4833, 4918, 5000, 5084, 5166, 5249, 5331, 5414, 5495, 5582, 5663, 5747, 5829, 5912, 5994, 6078, 6160, 6245]
    hit0 = 0
    power0 = 1.6  # 后街战术
    中毒data0 = [0, 547, 633, 720, 807, 897, 983, 1071, 1159, 1246, 1330, 1418, 1509, 1591, 1681, 1767, 1855, 1940, 2029, 2116, 2203, 2292, 2379, 2467, 2553, 2641, 2726, 2814, 2900, 2989, 3073, 3163, 3250, 3337, 3425, 3512, 3601, 3685, 3775, 3862, 3949, 4033, 4124, 4210, 4294, 4385, 4471, 4558, 4644, 4734, 4821, 4908, 4994, 5084, 5170, 5256, 5345, 5432, 5518, 5603, 5693, 5778, 5868, 5955, 6042, 6129, 6215, 6304, 6390, 6479, 6565]
    中毒hit0 = 0
    灼伤data0 = [0, 547, 633, 720, 807, 897, 983, 1071, 1159, 1246, 1330, 1418, 1509, 1591, 1681, 1767, 1855, 1940, 2029, 2116, 2203, 2292, 2379, 2467, 2553, 2641, 2726, 2814, 2900, 2989, 3073, 3163, 3250, 3337, 3425, 3512, 3601, 3685, 3775, 3862, 3949, 4033, 4124, 4210, 4294, 4385, 4471, 4558, 4644, 4734, 4821, 4908, 4994, 5084, 5170, 5256, 5345, 5432, 5518, 5603, 5693, 5778, 5868, 5955, 6042, 6129, 6215, 6304, 6390, 6479, 6565]
    灼伤hit0 = 0
    # 强化
    中毒data1 = [0, 1846, 2135, 2431, 2725, 3019, 3314, 3608, 3900, 4194, 4489, 4783, 5077, 5373, 5666, 5961, 6253, 6548, 6839, 7136, 7431, 7722, 8021, 8311, 8604, 8898, 9193, 9487, 9780, 10077, 10372, 10663, 10957, 11251, 11546, 11839, 12135, 12424, 12722, 13014, 13308, 13602, 13897, 14190, 14484, 14781, 15074, 15365, 15661, 15955, 16249, 16543, 16838, 17133, 17423, 17718, 18011, 18308, 18601, 18894, 19190, 19481, 19775, 20068, 20366, 20660, 20953, 21248, 21542, 21835, 22126]
    中毒hit1 = 1
    CD = 2.0
    TP成长 = 0.10
    TP上限 = 7

    形态 = ["强化", "不强化"]

    def 形态变更(self, 形态, char):
        if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "强化":
            self.hit0 = 0
            self.中毒hit0 = 0
            self.灼伤hit0 = 0
            self.中毒hit1 = 1
        if 形态 == "不强化":
            self.hit0 = 1
            self.中毒hit0 = 1
            self.灼伤hit0 = 1
            self.中毒hit1 = 0


class 技能3(主动技能):
    名称 = '擒月炎'
    备注 = '3异常(满)'
    所在等级 = 20
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [30, 280]
    data0 = [0, 684, 752, 814, 879, 942, 1009, 1071, 1136, 1200, 1264, 1327, 1395, 1459, 1524, 1588, 1654, 1716, 1781, 1841, 1908, 1971, 2036, 2100, 2166, 2229, 2294, 2357, 2421, 2487, 2544, 2615, 2673, 2743, 2802, 2869, 2932, 3001, 3059, 3126, 3190, 3255, 3319, 3385, 3446, 3518, 3569, 3643, 3702, 3771, 3771, 3889, 3957, 4018, 4086, 4148, 4215, 4273, 4344, 4401, 4474, 4533, 4593, 4660, 4724, 4788, 4853, 4918, 4982, 5043, 5108]
    hit0 = 1
    data1 = [0, 684, 752, 814, 879, 942, 1009, 1071, 1136, 1200, 1264, 1327, 1395, 1459, 1524, 1588, 1654, 1716, 1781, 1841, 1908, 1971, 2036, 2100, 2166, 2229, 2294, 2357, 2421, 2487, 2544, 2615, 2673, 2743, 2802, 2869, 2932, 3001, 3059, 3126, 3190, 3255, 3319, 3385, 3446, 3518, 3569, 3643, 3702, 3771, 3771, 3889, 3957, 4018, 4086, 4148, 4215, 4273, 4344, 4401, 4474, 4533, 4593, 4660, 4724, 4788, 4853, 4918, 4982, 5043, 5108]
    hit1 = 1
    data2 = [0, 2488, 2727, 2955, 3190, 3426, 3656, 3889, 4127, 4359, 4588, 4823, 5054, 5289, 5527, 5754, 5992, 6226, 6456, 6690, 6929, 7157, 7393, 7625, 7854, 8089, 8324, 8556, 8791, 9027, 9255, 9493, 9725, 9957, 10192, 10427, 10658, 10888, 11127, 11358, 11593, 11824, 12057, 12291, 12526, 12758, 12997, 13225, 13456, 13696, 13696, 14142, 14371, 14603, 14842, 15071, 15302, 15537, 15767, 16004, 16229, 16469, 16704, 16931, 17168, 17400, 17632, 17870, 18097, 18329, 18567]
    hit2 = 1
    倍率 = 1.6
    CD = 5.5
    TP成长 = 0.10
    TP上限 = 7


class 技能4(主动技能):
    名称 = '毒针投掷'
    所在等级 = 25
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [30, 280]

    # 不强化
    data0 = [0, 433, 477, 520, 564, 609, 651, 695, 737, 784, 828, 871, 917, 959, 1004, 1046, 1093, 1135, 1177, 1221, 1264, 1310, 1353, 1397, 1440, 1486, 1530, 1576, 1620, 1663, 1705, 1750, 1794, 1838, 1880, 1925, 1968, 2013, 2056, 2101, 2145, 2189, 2231, 2278, 2320, 2365, 2406, 2452, 2495, 2539, 2584, 2627, 2671, 2715, 2759, 2804, 2848, 2892, 2936, 2981, 3023, 3067, 3111, 3154, 3199, 3243, 3286, 3330, 3373, 3420, 3462]
    hit0 = 0
    power0 = 1.9  # 后街战术
    出血data0 = [0, 379, 415, 453, 492, 530, 568, 609, 645, 684, 720, 761, 798, 837, 873, 914, 951, 990, 1029, 1067, 1106, 1144, 1183, 1220, 1258, 1294, 1336, 1372, 1409, 1450, 1488, 1527, 1565, 1603, 1642, 1681, 1718, 1757, 1794, 1831, 1872, 1909, 1947, 1987, 2024, 2066, 2102, 2141, 2179, 2219, 2255, 2293, 2330, 2369, 2406, 2447, 2485, 2524, 2561, 2601, 2639, 2677, 2715, 2755, 2790, 2830, 2866, 2906, 2943, 2982, 3022]
    出血hit0 = 0
    感电data0 = [0, 379, 415, 453, 492, 530, 568, 609, 645, 684, 720, 761, 798, 837, 873, 914, 951, 990, 1029, 1067, 1106, 1144, 1183, 1220, 1258, 1294, 1336, 1372, 1409, 1450, 1488, 1527, 1565, 1603, 1642, 1681, 1718, 1757, 1794, 1831, 1872, 1909, 1947, 1987, 2024, 2066, 2102, 2141, 2179, 2219, 2255, 2293, 2330, 2369, 2406, 2447, 2485, 2524, 2561, 2601, 2639, 2677, 2715, 2755, 2790, 2830, 2866, 2906, 2943, 2982, 3022]
    感电hit0 = 0
    感电power0 = 2  # 逆道·皆允
    # 强化
    data1 = [0, 344, 380, 414, 449, 484, 519, 555, 587, 624, 658, 694, 730, 763, 796, 834, 869, 902, 939, 972, 1009, 1044, 1077, 1113, 1149, 1183, 1219, 1251, 1288, 1321, 1356, 1395, 1427, 1462, 1498, 1532, 1566, 1602, 1636, 1674, 1708, 1741, 1776, 1811, 1848, 1880, 1917, 1952, 1987, 2021, 2056, 2090, 2127, 2162, 2196, 2231, 2266, 2300, 2337, 2370, 2405, 2442, 2475, 2512, 2545, 2580, 2614, 2649, 2685, 2720, 2756]
    hit1 = 4
    出血data1 = [0, 451, 498, 543, 589, 634, 682, 727, 773, 820, 867, 910, 956, 1003, 1047, 1093, 1141, 1186, 1231, 1277, 1324, 1370, 1414, 1461, 1507, 1554, 1600, 1646, 1691, 1739, 1784, 1829, 1875, 1923, 1967, 2013, 2059, 2105, 2151, 2197, 2244, 2290, 2334, 2382, 2428, 2473, 2519, 2565, 2611, 2658, 2701, 2747, 2794, 2839, 2885, 2930, 2978, 3023, 3069, 3116, 3163, 3207, 3253, 3300, 3345, 3390, 3438, 3483, 3529, 3573, 3620]
    出血hit1 = 4
    CD = 3
    TP成长 = 0.10
    TP上限 = 7

    形态 = ["强化", "不强化"]

    def 形态变更(self, 形态, char):
        if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "强化":
            self.hit0 = 0
            self.出血hit0 = 0
            self.感电hit0 = 0
            self.hit1 = 4
            self.出血hit1 = 4
        if 形态 == "不强化":
            self.hit0 = 1
            self.出血hit0 = 1
            self.感电hit0 = 1
            self.hit1 = 0
            self.出血hit1 = 0


class 技能5(被动技能):
    名称 = '爪精通'
    所在等级 = 25
    等级上限 = 30
    基础等级 = 20

    def 物理攻击力倍率(self, 武器类型):
        return (1.31 + (self.等级 - 20) * 0.02) if self.等级 >= 20 else (1.11 + self.等级 * 0.01)

    def 魔法攻击力倍率(self, 武器类型):
        return self.物理攻击力倍率(武器类型)


class 技能6(主动技能):
    名称 = '砖块投掷'
    所在等级 = 30
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [50, 420]
    # 不强化
    # 砖块攻击力 (魔法)：<data0>%
    data0 = [0, 1132, 1249, 1365, 1480, 1595, 1710, 1826, 1941, 2056, 2170, 2284, 2398, 2515, 2630, 2744, 2860, 2976, 3090, 3208, 3323, 3435, 3550, 3664, 3781, 3899, 4015, 4128, 4245, 4358, 4473, 4589, 4701, 4817, 4935, 5050, 5166, 5281, 5393, 5509, 5623, 5739, 5855, 5970, 6085, 6199, 6315, 6430, 6545, 6660, 6771, 6889, 7006, 7122, 7235, 7353, 7467, 7584, 7697, 7808, 7926, 8044, 8157, 8273, 8389, 8502, 8619, 8732, 8848, 8962, 9078]
    hit0 = 0
    power0 = 1.6  # 后街战术
    # 砖块碎片攻击力 (魔法)：<data1>%
    data1 = [0, 857, 942, 1028, 1115, 1204, 1292, 1377, 1463, 1551, 1635, 1724, 1811, 1898, 1986, 2070, 2157, 2245, 2332, 2418, 2504, 2590, 2678, 2763, 2851, 2939, 3029, 3115, 3200, 3287, 3376, 3462, 3549, 3635, 3721, 3809, 3898, 3981, 4070, 4158, 4245, 4329, 4416, 4504, 4591, 4678, 4764, 4849, 4936, 5022, 5109, 5197, 5285, 5373, 5457, 5545, 5632, 5718, 5805, 5892, 5978, 6066, 6153, 6243, 6328, 6414, 6502, 6587, 6677, 6761, 6847]
    hit1 = 0
    power1 = 1.6  # 后街战术
    # 强化
    # 巨石攻击力 (魔法)：<data5>%
    data2 = [0, 2012, 2221, 2423, 2630, 2832, 3036, 3240, 3445, 3650, 3856, 4059, 4264, 4469, 4673, 4877, 5084, 5285, 5491, 5693, 5899, 6104, 6307, 6513, 6717, 6921, 7125, 7330, 7534, 7740, 7943, 8150, 8353, 8557, 8762, 8963, 9171, 9373, 9580, 9783, 9989, 10193, 10397, 10601, 10804, 11010, 11214, 11419, 11627, 11829, 12032, 12234, 12441, 12643, 12849, 13055, 13259, 13466, 13668, 13874, 14076, 14280, 14486, 14689, 14896, 15098, 15307, 15508, 15712, 15914, 16122]
    hit2 = 1
    # 巨石碎块攻击力 (魔法)：<data6>%
    data3 = [0, 1518, 1674, 1829, 1982, 2136, 2290, 2447, 2601, 2757, 2908, 3061, 3216, 3369, 3525, 3678, 3833, 3988, 4139, 4295, 4450, 4603, 4759, 4911, 5069, 5223, 5374, 5530, 5683, 5837, 5990, 6146, 6299, 6452, 6610, 6764, 6919, 7073, 7226, 7383, 7534, 7691, 7845, 7996, 8152, 8304, 8460, 8613, 8768, 8925, 9078, 9232, 9386, 9540, 9692, 9847, 10002, 10155, 10312, 10464, 10618, 10774, 10928, 11083, 11240, 11389, 11546, 11698, 11853, 12007, 12160]
    hit3 = 1
    CD = 4.0
    TP成长 = 0.10
    TP上限 = 7

    形态 = ["强化", "不强化"]

    def 形态变更(self, 形态, char):
        if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "强化":
            self.hit0 = 0
            self.hit1 = 0
            self.hit2 = 1
            self.hit3 = 1
        if 形态 == "不强化":
            self.hit0 = 1
            self.hit1 = 1
            self.hit2 = 0
            self.hit3 = 0


class 技能7(主动技能):
    名称 = '伏虎霸王拳'
    所在等级 = 30
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [80, 672]
    # [伏虎霸王拳]攻击力 (魔法)：<data0>%
    data0 = [0, 1859, 2051, 2244, 2437, 2628, 2819, 3011, 3204, 3395, 3590, 3782, 3973, 4163, 4356, 4550, 4742, 4930, 5125, 5318, 5510, 5702, 5897, 6085, 6280, 6470, 6663, 6855, 7049, 7238, 7431, 7626, 7817, 8011, 8198, 8395, 8584, 8778, 8968, 9163, 9354, 9548, 9737, 9932, 10120, 10317, 10505, 10701, 10891, 11084, 11277, 11466, 11661, 11852, 12044, 12234, 12428, 12621, 12813, 13003, 13198, 13391, 13583, 13774, 13969, 14158, 14354, 14542, 14736, 14927, 15120]
    hit0 = 3
    CD = 15
    TP成长 = 0.10
    TP上限 = 5  # 基础精通


class 技能8(主动技能):
    名称 = '螺旋滑铲'
    所在等级 = 35
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    # 攻击力 (魔法)：<data0>%
    data0 = [0, 4694, 5168, 5646, 6121, 6596, 7074, 7549, 8027, 8502, 8978, 9451, 9928, 10407, 10882, 11360, 11832, 12311, 12788, 13263, 13739, 14215, 14690, 15166, 15645, 16121, 16598, 17074, 17547, 18024, 18503, 18977, 19455, 19926, 20405, 20882, 21359, 21833, 22310, 22786, 23261, 23739, 24214, 24691, 25167, 25643, 26119, 26594, 27071, 27549, 28023, 28500, 28975, 29453, 29930, 30403, 30879, 31355, 31833, 32308, 32787, 33260, 33736, 34211, 34688, 35167, 35639, 36116, 36595, 37072, 37547]
    hit0 = 3
    CD = 20
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [200, 1820]
    无色消耗 = 1

    形态 = ["非抓", "抓取"]

    def 形态变更(self, 形态, char):
        if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "非抓":
            self.power0 = 1.2
        if 形态 == "抓取":
            self.power0 = 1.0

    def 装备护石(self, char):
        self.hit0 = 1
        self.倍率 *= 3.89
        self.CDR *= 0.9


class 技能9(主动技能):
    名称 = '罗网投掷'
    所在等级 = 35
    等级上限 = 11
    学习间隔 = 3
    等级精通 = 1
    MP = [180, 1512]
    data0 = [0, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279]
    hit0 = 1
    CD = 15
    TP成长 = 0.10
    TP上限 = 5


class 技能10(主动技能):
    名称 = '挑衅'
    所在等级 = 35
    等级上限 = 20
    基础等级 = 10
    是否有伤害 = 0
    关联技能 = ['所有']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.05 + 0.02 * self.等级, 5)


class 技能11(主动技能):
    名称 = '毒雷引爆'
    所在等级 = 40
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    # 毒气柱魔法攻击力：<data0>%
    data0 = [0, 11908, 13116, 14322, 15530, 16739, 17947, 19151, 20359, 21569, 22777, 23984, 25191, 26401, 27610, 28819, 30026, 31233, 32440, 33650, 34854, 36063, 37270, 38479, 39689, 40898, 42106, 43312, 44520, 45727, 46935, 48145, 49351, 50559, 51766, 52974, 54183, 55392, 56601, 57805, 59013, 60223, 61431, 62638, 63845, 65053, 66261, 67470, 68676, 69886, 71094, 72304, 73510, 74717, 75923, 77134, 78343, 79548, 80757, 81962, 83172, 84380, 85591, 86797, 88005, 89215, 90422, 91628, 92837, 94043, 95254]
    hit0 = 1
    # 侧踢攻击力 (魔法)：<data2>%
    data1 = [0, 6066, 6681, 7295, 7911, 8528, 9141, 9757, 10373, 10989, 11601, 12219, 12834, 13447, 14067, 14680, 15293, 15914, 16527, 17140, 17758, 18372, 18989, 19603, 20219, 20834, 21450, 22065, 22682, 23296, 23910, 24526, 25143, 25756, 26374, 26988, 27604, 28218, 28835, 29449, 30065, 30682, 31295, 31909, 32526, 33143, 33753, 34374, 34987, 35601, 36218, 36834, 37446, 38062, 38679, 39295, 39908, 40529, 41142, 41755, 42373, 42987, 43601, 44219, 44834, 45451, 46064, 46678, 47294, 47910, 48526]
    hit1 = 1
    # 中毒攻击力 (魔法)：<data1>%
    中毒data0 = [0, 2995, 3296, 3603, 3907, 4209, 4515, 4820, 5120, 5424, 5729, 6032, 6336, 6642, 6943, 7248, 7552, 7856, 8162, 8466, 8767, 9071, 9374, 9678, 9985, 10288, 10589, 10895, 11198, 11500, 11804, 12110, 12413, 12718, 13022, 13326, 13630, 13933, 14237, 14540, 14843, 15147, 15454, 15753, 16060, 16363, 16667, 16972, 17277, 17579, 17883, 18186, 18491, 18794, 19100, 19402, 19704, 20009, 20313, 20617, 20920, 21228, 21532, 21833, 22137, 22441, 22746, 23049, 23351, 23657, 23958]
    中毒hit0 = 1
    CD = 24
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [180, 1512]
    无色消耗 = 1

    def 装备护石(self, char):
        self.hit0 = 3
        self.hit1 = 0
        self.中毒hit0 = 3
        self.power0 = 0.52
        self.中毒power0 = 1.08


class 技能12(被动技能):
    名称 = '狂·霸王拳'
    备注 = '3异常(满)'
    所在等级 = 40
    等级上限 = 11
    基础等级 = 1
    关联技能 = ['伏虎霸王拳']
    冷却关联技能 = ['伏虎霸王拳']
    额外倍率 = 1
    自定义描述 = 1

    # [狂 · 霸王拳]附加魔法攻击力：<data0>%
    # 这部分属于被动倍率，一般加强不会加强到这里
    data0 = [0, 630, 642, 654, 666, 678, 690, 702, 714, 726, 738, 750]
    MP = [0, 0]
    无色消耗 = 1

    额外倍率 = 1
    CD缩减 = 1

    def CD缩减倍率(self, 武器类型):
        return self.CD缩减

    def 技能描述(self, 武器类型):
        temp = ''
        temp += '[伏虎霸王拳]的攻击次数变更为1次<br>' + \
            '[狂·霸王拳]附加魔法攻击力' + \
            str(self.data0[self.等级]) + '%<br>' + \
            '每个异常状态附加攻击力 (最多3个)：20%'
        return temp

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        return round((self.data0[self.等级]/100)/3*1.6*self.额外倍率, 5)


class 技能13(主动技能):
    名称 = '残忍套索'
    所在等级 = 45
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    # 毒针伤害 (魔法)：<data0>%
    data0 = [0, 1586, 1747, 1907, 2068, 2230, 2391, 2552, 2713, 2873, 3034, 3195, 3356, 3517, 3678, 3838, 4000, 4161, 4322, 4483, 4644, 4804, 4965, 5126, 5287, 5448, 5610, 5771, 5931, 6092, 6253, 6414, 6575, 6736, 6896, 7057, 7219, 7380, 7541, 7702, 7862, 8023, 8184, 8345, 8506, 8667, 8827, 8989, 9150, 9311, 9472, 9633, 9793, 9954, 10115, 10276, 10437, 10599, 10760, 10920, 11081, 11242, 11403, 11564, 11725, 11885, 12046, 12207, 12369, 12530, 12691]
    hit0 = 8 + 1
    # 出血伤害 (魔法)：<data1>%
    出血data0 = [0, 3172, 3494, 3816, 4137, 4460, 4782, 5103, 5425, 5747, 6069, 6391, 6713, 7035, 7356, 7678, 8001, 8322, 8644, 8966, 9287, 9610, 9932, 10253, 10575, 10897, 11219, 11541, 11863, 12184, 12506, 12829, 13150, 13472, 13794, 14115, 14438, 14760, 15081, 15403, 15725, 16046, 16369, 16691, 17013, 17334, 17656, 17979, 18300, 18622, 18944, 19265, 19588, 19910, 20231, 20553, 20875, 21197, 21519, 21841, 22162, 22484, 22806, 23128, 23450, 23772, 24093, 24415, 24738, 25059, 25381]
    出血hit0 = 8 + 1
    CD = 45
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [450, 3780]
    无色消耗 = 2

    def 装备护石(self, char):
        self.倍率 *= 1.29


class 技能14(被动技能):
    名称 = '千手奥义'
    所在等级 = 48
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40
    关联技能 = ['所有']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        elif self.等级 <= 16:
            return round(1.00 + 0.015 * self.等级, 5)
        else:
            return round(1.24 + 0.02 * (self.等级 - 16), 5)


class 技能15(主动技能):
    名称 = '天崩地裂'
    所在等级 = 50
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40

    # 地面爆炸魔法攻击力：<data0>%
    data0 = [0, 33443, 41200, 48956, 56708, 64466, 72217, 79977, 87731, 95487, 103245, 110998, 118755, 126512, 134264, 142021, 149773, 157532, 165286, 173043, 180798, 188551, 196307, 204064, 211819, 219572, 227327, 235085, 242841, 250592, 258351, 266105, 273865, 281617, 289374, 297130, 304884, 312640, 320397, 328146, 335906, 343661, 351416, 359173, 366927, 374682, 382438, 390193, 397949, 405704, 413460]
    hit0 = 1
    # 石块落地魔法攻击力：<data1>%
    data1 = [0, 47659, 58709, 69763, 80814, 91865, 102915, 113967, 125019, 136069, 147121, 158172, 169224, 180277, 191328, 202380, 213430, 224481, 235534, 246586, 257637, 268688, 279739, 290792, 301844, 312892, 323943, 334994, 346047, 357100, 368152, 379204, 390255, 401303, 412359, 423410, 434458, 445510, 456561, 467615, 478665, 489716, 500769, 511820, 522870, 533923, 544974, 556026, 567078, 578128, 589180]
    hit1 = 1
    # 每秒灼伤攻击力 (魔法)：<data2>%
    灼伤data0 = [0, 140, 169, 203, 237, 267, 299, 330, 364, 396, 430, 463, 493, 527, 561, 592, 624, 658, 685, 719, 753, 784, 815, 850, 882, 916, 947, 982, 1011, 1044, 1074, 1107, 1141, 1175, 1204, 1238, 1268, 1303, 1334, 1366, 1401, 1431, 1464, 1496, 1529, 1561, 1593, 1627, 1658, 1690, 1722]
    灼伤hit0 = 6
    # 每秒中毒攻击力 (魔法)：<data4>%
    中毒data0 = [0, '0', '0', 203, 237, 267, 299, 330, 364, 396, 430, 463, 493, 527, 561, 592, 624, 658, 685, 719, 753, 784, 815, 850, 882, 916, 947, 982, 1011, 1044, 1074, 1107, 1141, 1175, 1204, 1238, 1268, 1303, 1334, 1366, 1401, 1431, 1464, 1496, 1529, 1561, 1593, 1627, 1658, 1690, 1722]
    中毒hit0 = 6
    # 出血攻击力 (魔法)：<data7>%
    出血data0 = [0, '0', '0', '0', '0', '0', 1804, 1998, 2190, 2385, 2578, 2777, 2969, 3163, 3356, 3550, 3742, 3936, 4133, 4328, 4520, 4713, 4906, 5100, 5293, 5489, 5682, 5879, 6069, 6264, 6458, 6652, 6847, 7040, 7233, 7426, 7620, 7815, 8006, 8204, 8395, 8590, 8784, 8977, 9172, 9367, 9560, 9754, 9947, 10141, 10335]
    出血hit0 = 1
    CD = 145

    MP = [900, 7560]
    无色消耗 = 5


class 技能16(主动技能):
    名称 = '爆破污桶'
    所在等级 = 60
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [0, 24308, 26769, 29236, 31701, 34170, 36634, 39103, 41562, 44028, 46497, 48963, 51425, 53894, 56359, 58828, 61289, 63758, 66224, 68692, 71152, 73616, 76083, 78546, 81017, 83482, 85947, 88411, 90878, 93344, 95809, 98277, 100739, 103203, 105672, 108135, 110606, 113071, 115534, 118001, 120465, 122932, 125396, 127865, 130328, 132792, 135261, 137725, 140193, 142660, 145123]
    hit0 = 1

    CD = 20
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [280, 784]
    无色消耗 = 1

    def 装备护石(self, char):
        self.倍率 *= 1.32


class 技能17(主动技能):
    名称 = '千锁乱舞'
    所在等级 = 70
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    # 魔法攻击力：<data0>%
    data0 = [0, 4752, 5238, 5718, 6203, 6683, 7166, 7649, 8131, 8613, 9093, 9578, 10059, 10545, 11023, 11508, 11988, 12473, 12955, 13439, 13920, 14404, 14887, 15368, 15851, 16330, 16816, 17297, 17778, 18260, 18745, 19225, 19710, 20193, 20672, 21157, 21640, 22120, 22604, 23083, 23567, 24052, 24535, 25013, 25498, 25981, 26460, 26943, 27425, 27908, 28390]
    hit0 = 5
    # 出血攻击力 (魔法)：<data1>%
    出血data0 = [0, 4752, 5238, 5718, 6203, 6683, 7166, 7649, 8131, 8613, 9093, 9578, 10059, 10545, 11023, 11508, 11988, 12473, 12955, 13439, 13920, 14404, 14887, 15368, 15851, 16330, 16816, 17297, 17778, 18260, 18745, 19225, 19710, 20193, 20672, 21157, 21640, 22120, 22604, 23083, 23567, 24052, 24535, 25013, 25498, 25981, 26460, 26943, 27425, 27908, 28390]
    出血hit0 = 5
    CD = 50
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [800, 1680]
    无色消耗 = 2

    def 装备护石(self, char):
        self.hit0 = 6
        self.出血hit0 = 6
        self.倍率 *= 1.07
        self.CDR *= 0.91


class 技能18(主动技能):
    名称 = '暗街夺命锁'
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [0, 37760, 41592, 45423, 49255, 53081, 56914, 60745, 64578, 68407, 72236, 76069, 79900, 83730, 87559, 91390, 95223, 99056, 102884, 106713, 110543, 114378, 118206, 122038, 125869, 129699, 133530, 137360, 141192, 145023, 148854, 152684, 156512, 160347, 164177, 168008, 171837, 175666, 179498, 183332, 187162, 190991, 194823, 198653, 202485, 206315, 210146, 213976, 217807, 221637, 225469]
    hit0 = 0
    data1 = [0, 22657, 24955, 27252, 29551, 31849, 34147, 36445, 38747, 41042, 43344, 45639, 47940, 50240, 52534, 54832, 57132, 59432, 61730, 64029, 66328, 68626, 70925, 73226, 75520, 77818, 80118, 82415, 84715, 87014, 89308, 91609, 93908, 96206, 98506, 100804, 103105, 105401, 107699, 109997, 112295, 114594, 116892, 119193, 121491, 123789, 126088, 128386, 130684, 132982, 135281]
    hit1 = 0
    data2 = [0, 60417, 66546, 72677, 78805, 84935, 91062, 97193, 103321, 109453, 115578, 121709, 127839, 133967, 140097, 146229, 152356, 158484, 164615, 170744, 176873, 183001, 189130, 195260, 201390, 207519, 213650, 219778, 225906, 232036, 238166, 244295, 250427, 256552, 262681, 268810, 274941, 281071, 287199, 293330, 299459, 305587, 311717, 317846, 323974, 330104, 336235, 342363, 348492, 354622, 360750]
    hit2 = 1
    出血data0 = [0, 15104, 16634, 18167, 19699, 21234, 22765, 24296, 25829, 27362, 28894, 30426, 31962, 33494, 35026, 36555, 38088, 39619, 41154, 42685, 44216, 45751, 47283, 48816, 50344, 51881, 53412, 54942, 56473, 58011, 59542, 61073, 62605, 64140, 65670, 67201, 68737, 70266, 71798, 73331, 74866, 76397, 77929, 79461, 80994, 82525, 84058, 85590, 87123, 88655, 90188]
    出血hit0 = 1
    CD = 40
    是否有护石 = 1

    MP = [580, 4500]
    无色消耗 = 3

    形态 = ["非抓", "抓取"]

    def 形态变更(self, 形态, char):
        if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "非抓":
            self.hit0 = 0
            self.hit1 = 0
            self.hit2 = 1
            self.hit3 = 1
        if 形态 == "抓取":
            self.hit0 = 1
            self.hit1 = 1
            self.hit2 = 0
            self.hit3 = 1

    def 装备护石(self, char):
        self.倍率 *= 1.14*1.18


class 技能19(被动技能):
    名称 = '诡诈之道'
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40
    关联技能 = ['所有']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.18 + 0.02 * self.等级, 5)


class 技能20(主动技能):
    名称 = '飞沙走石'
    所在等级 = 80
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    # 小石块魔法攻击力：<data0>%
    data0 = [0, 2818, 3104, 3390, 3680, 3963, 4250, 4540, 4822, 5111, 5397, 5681, 5971, 6255, 6540, 6827, 7113, 7399, 7686, 7972, 8257, 8546, 8831, 9114, 9401, 9689, 9973, 10261, 10547, 10834, 11117, 11406, 11694, 11977, 12266, 12549, 12835, 13125, 13409, 13693, 13982, 14268, 14554, 14840, 15125, 15413, 15699, 15985, 16271, 16556, 16844]
    hit0 = 10
    # 巨型石块魔法攻击力：<data1>%
    data1 = [0, 16750, 18447, 20147, 21845, 23544, 25246, 26943, 28642, 30343, 32042, 33739, 35441, 37140, 38838, 40539, 42235, 43935, 45637, 47334, 49033, 50731, 52431, 54130, 55829, 57530, 59228, 60930, 62628, 64325, 66024, 67726, 69425, 71121, 72823, 74522, 76220, 77922, 79619, 81318, 83018, 84717, 86416, 88115, 89815, 91514, 93213, 94912, 96611, 98310, 100010]
    hit1 = 1
    # 冲击波魔法攻击力：<data3>%
    data2 = [0, 16750, 18447, 20147, 21845, 23544, 25246, 26943, 28642, 30343, 32042, 33739, 35441, 37140, 38838, 40539, 42235, 43935, 45637, 47334, 49033, 50731, 52431, 54130, 55829, 57530, 59228, 60930, 62628, 64325, 66024, 67726, 69425, 71121, 72823, 74522, 76220, 77922, 79619, 81318, 83018, 84717, 86416, 88115, 89815, 91514, 93213, 94912, 96611, 98310, 100010]
    hit2 = 1
    # 出血攻击力 (魔法)：<data2>%
    出血data0 = [0, 26446, 29125, 31810, 34492, 37177, 39859, 42543, 45228, 47908, 50591, 53272, 55956, 58642, 61322, 64007, 66689, 69372, 72053, 74736, 77419, 80105, 82789, 85469, 88156, 90838, 93519, 96202, 98884, 101570, 104251, 106936, 109619, 112301, 114982, 117665, 120351, 123034, 125716, 128399, 131085, 133765, 136448, 139131, 141815, 144497, 147181, 149863, 152547, 155229, 157913]
    出血hit0 = 1
    CD = 45
    是否有护石 = 1

    MP = [800, 6000]
    无色消耗 = 5

    def 装备护石(self, char):
        self.hit0 = 0
        self.power2 = 4.6
        self.CDR *= 0.9


class 技能21(主动技能):
    名称 = '燃火轰天炮'
    备注 = '3异常(满)'
    所在等级 = 85
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40

    # 铁管打击 (魔法)：<data0>%
    data0 = [0, 41916, 51639, 61358, 71081, 80798, 90517, 100239, 109961, 119678, 129397, 139120, 148847, 158559, 168277, 178005, 187716, 197439, 207163, 216881, 226601, 236325, 246040, 255764, 265483, 275204, 284928, 294646, 304362, 314086, 323805, 333524, 343246, 352965, 362684, 372407, 382125, 391846, 401570, 411286, 421004, 430728, 440447, 450168, 459888, 469608, 479328, 489048, 498769, 508489, 518208]
    hit0 = 1
    # 第1~2次爆炸 (魔法)：<data1>%
    data1 = [0, 24300, 29935, 35569, 41206, 46841, 52478, 58109, 63745, 69380, 75015, 80648, 86283, 91921, 97554, 103190, 108824, 114460, 120091, 125732, 131362, 136999, 142634, 148270, 153902, 159536, 165173, 170809, 176443, 182081, 187710, 193348, 198984, 204618, 210252, 215888, 221522, 227157, 232792, 238429, 244063, 249697, 255333, 260966, 266603, 272236, 277871, 283506, 289141, 294776, 300411]
    hit1 = 2
    # 第3~5次爆炸 (魔法)：<data2>%
    data2 = [0, 12151, 14968, 17785, 20602, 23421, 26237, 29055, 31875, 34690, 37508, 40325, 43142, 45961, 48778, 51594, 54412, 57231, 60049, 62865, 65682, 68499, 71320, 74133, 76952, 79769, 82588, 85404, 88222, 91039, 93858, 96675, 99490, 102306, 105130, 107941, 110762, 113580, 116396, 119214, 122031, 124848, 127666, 130484, 133301, 136118, 138935, 141753, 144571, 147388, 150205]
    hit2 = 3
    倍率 = 1.75
    CD = 180.0

    MP = [2500, 5000]
    无色消耗 = 10


class 技能22(主动技能):
    名称 = '逆道·爆狱'
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    # 不强化
    # 木桶多段攻击力 (魔法)：<data0>%
    data0 = [0, 11320, 12469, 13618, 14764, 15913, 17062, 18212, 19359, 20507, 21656, 22805, 23952, 25101, 26250, 27399, 28547, 29695, 30844, 31993, 33140, 34289, 35438, 36587, 37735, 38883, 40032, 41181, 42328, 43477, 44626, 45775, 46923, 48071, 49220, 50369, 51516, 52665, 53815, 54963, 56111, 57259, 58408, 59556, 60705, 61853, 63001, 64151, 65299, 66447, 67596]
    hit0 = 0
    # 爆炸攻击力 (魔法)：<data1>%
    data1 = [0, 84906, 93519, 102131, 110747, 119360, 127974, 136587, 145201, 153815, 162428, 171041, 179656, 188269, 196884, 205497, 214110, 222723, 231337, 239952, 248566, 257179, 265793, 274404, 283020, 291632, 300248, 308862, 317474, 326088, 334701, 343315, 351928, 360542, 369157, 377771, 386383, 394997, 403610, 412225, 420838, 429452, 438065, 446680, 455294, 463907, 472521, 481133, 489747, 498361, 506975]
    hit1 = 0
    # 强化
    # 金属桶多段攻击力 (魔法)：<data2>%
    data2 = [0, 13038, 14361, 15684, 17005, 18330, 19651, 20973, 22298, 23619, 24942, 26267, 27589, 28911, 30232, 31557, 32879, 34201, 35524, 36848, 38169, 39494, 40817, 42138, 43461, 44785, 46107, 47429, 48752, 50075, 51397, 52721, 54043, 55367, 56689, 58012, 59334, 60656, 61980, 63301, 64626, 65948, 67270, 68594, 69917, 71239, 72562, 73884, 75207, 76530, 77853]
    hit2 = 5
    # 连锁爆炸攻击力 (魔法)：<data3>%
    data3 = [0, 16298, 17951, 19604, 21258, 22911, 24565, 26217, 27872, 29525, 31178, 32833, 34485, 36138, 37792, 39445, 41099, 42753, 44407, 46061, 47713, 49367, 51021, 52674, 54326, 55981, 57634, 59287, 60940, 62594, 64247, 65901, 67554, 69207, 70861, 72515, 74169, 75821, 77474, 79129, 80782, 82435, 84090, 85742, 87395, 89049, 90703, 92356, 94009, 95663, 97317]
    hit3 = 5
    # 灼伤攻击力 (魔法)：<data4>%
    灼伤data0 = [0, 3259, 3588, 3921, 4251, 4582, 4914, 5243, 5574, 5905, 6235, 6566, 6897, 7227, 7558, 7887, 8218, 8551, 8882, 9212, 9543, 9872, 10204, 10534, 10864, 11196, 11526, 11857, 12186, 12518, 12847, 13180, 13512, 13840, 14172, 14503, 14833, 15163, 15494, 15825, 16156, 16487, 16816, 17147, 17478, 17808, 18140, 18471, 18801, 19132, 19463]
    灼伤hit0 = 5
    CD = 60.0

    MP = [960, 7200]
    无色消耗 = 7

    形态 = ["强化", "不强化"]

    def 形态变更(self, 形态, char):
        if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "强化":
            self.hit0 = 0
            self.hit1 = 0
            self.hit2 = 5
            self.hit3 = 5
            self.出血hit0 = 5
        if 形态 == "不强化":
            self.hit0 = 5
            self.hit1 = 1
            self.hit2 = 0
            self.hit3 = 0
            self.出血hit0 = 0


class 技能23(被动技能):
    名称 = '逆道·皆允'
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.18 + 0.02 * self.等级, 5)


class 技能24(主动技能):
    名称 = '逆道·幽链之界'
    所在等级 = 100
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40

    # 锁链横扫攻击力 (魔法)：<data0>%
    data0 = [0, 16651, 20510, 24372, 28234, 32095, 35955, 39818, 43678, 47539, 51400, 55262, 59122, 62983, 66845, 70705, 74567, 78427, 82289, 86151, 90011, 93872, 97734, 101594, 105453, 109317, 113178, 117038, 120900, 124761, 128621, 132484, 136344, 140205, 144066, 147928, 151788, 155650, 159511, 163371, 167233, 171094, 174955, 178816, 182677, 186538, 190400, 194260, 198121, 201983, 205843]
    hit0 = 5
    # 锁链突刺攻击力 (魔法)：<data1>%
    data1 = [0, 27750, 34187, 40620, 47055, 53492, 59927, 66361, 72797, 79233, 85667, 92103, 98537, 104971, 111408, 117844, 124278, 130714, 137149, 143583, 150019, 156453, 162887, 169325, 175760, 182195, 188629, 195065, 201500, 207935, 214371, 220805, 227239, 233676, 240111, 246545, 252982, 259417, 265852, 272287, 278721, 285157, 291591, 298028, 304463, 310897, 317333, 323768, 330202, 336639, 343074]
    hit1 = 1
    # 锁链旋转攻击力 (魔法)：<data2>%
    data2 = [0, 16651, 20510, 24372, 28234, 32095, 35955, 39818, 43678, 47539, 51400, 55262, 59122, 62983, 66845, 70705, 74567, 78427, 82289, 86151, 90011, 93872, 97734, 101594, 105453, 109317, 113178, 117038, 120900, 124761, 128621, 132484, 136344, 140205, 144066, 147928, 151788, 155650, 159511, 163371, 167233, 171094, 174955, 178816, 182677, 186538, 190400, 194260, 198121, 201983, 205843]
    hit2 = 10
    # 建筑炸弹地面上攻击力 (魔法)：<data3>%
    data3 = [0, 83253, 102559, 121865, 141171, 160476, 179780, 199087, 218392, 237697, 257003, 276309, 295613, 314920, 334225, 353531, 372836, 392142, 411448, 430753, 450059, 469364, 488670, 507975, 527280, 546585, 565890, 585196, 604501, 623807, 643112, 662418, 681723, 701029, 720334, 739641, 758946, 778251, 797557, 816862, 836168, 855473, 874779, 894084, 913390, 932695, 952001, 971306, 990611, 1009917, 1029222]
    hit3 = 1
    # 建筑炸弹爆炸攻击力 (魔法)：<data4>%
    data4 = [0, 177609, 218793, 259980, 301165, 342348, 383535, 424720, 465905, 507090, 548276, 589459, 630644, 671830, 713014, 754200, 795386, 836569, 877755, 918939, 960126, 1001309, 1042493, 1083680, 1124865, 1166048, 1207234, 1248420, 1289605, 1330789, 1371976, 1413159, 1454344, 1495530, 1536714, 1577900, 1619085, 1660269, 1701455, 1742640, 1783824, 1825009, 1866194, 1907380, 1948565, 1989750, 2030935, 2072119, 2113305, 2154490, 2195674]
    hit4 = 1
    # 出血攻击力 (魔法)：<data5>%
    出血data0 = [0, 5550, 6836, 8123, 9411, 10699, 11985, 13271, 14558, 15846, 17132, 18420, 19708, 20994, 22282, 23567, 24855, 26142, 27430, 28715, 30003, 31291, 32577, 33865, 35150, 36438, 37725, 39013, 40301, 41585, 42873, 44160, 45448, 46734, 48022, 49310, 50596, 51882, 53169, 54457, 55744, 57030, 58318, 59605, 60892, 62179, 63466, 64753, 66039, 67328, 68614]
    出血hit0 = 1
    # 中毒攻击力 (魔法)：<data6>%
    中毒data0 = [0, 5550, 6836, 8123, 9411, 10699, 11985, 13271, 14558, 15846, 17132, 18420, 19708, 20994, 22282, 23567, 24855, 26142, 27430, 28715, 30003, 31291, 32577, 33865, 35150, 36438, 37725, 39013, 40301, 41585, 42873, 44160, 45448, 46734, 48022, 49310, 50596, 51882, 53169, 54457, 55744, 57030, 58318, 59605, 60892, 62179, 63466, 64753, 66039, 67328, 68614]
    中毒hit0 = 1
    # 灼伤攻击力 (魔法)：<data7>%
    灼伤data0 = [0, 5550, 6836, 8123, 9411, 10699, 11985, 13271, 14558, 15846, 17132, 18420, 19708, 20994, 22282, 23567, 24855, 26142, 27430, 28715, 30003, 31291, 32577, 33865, 35150, 36438, 37725, 39013, 40301, 41585, 42873, 44160, 45448, 46734, 48022, 49310, 50596, 51882, 53169, 54457, 55744, 57030, 58318, 59605, 60892, 62179, 63466, 64753, 66039, 67328, 68614]
    灼伤hit0 = 1
    CD = 290

    MP = [4025, 8055]
    无色消耗 = 15


class classChange(Character):
    def __init__(self, equVersion=""):
        self.实际名称 = 'brawler_male'
        self.名称 = '归元·街霸'
        self.角色 = '格斗家(男)'
        self.职业 = '街霸'
        # 用来筛CP武器的
        self.转职 = '街霸(男)'
        self.武器选项 = ['爪']
        self.输出类型选项 = ['魔法百分比', '物理百分比']
        self.防具精通属性 = ['力量', '智力']
        self.类型 = '魔法百分比'
        self.武器类型 = '爪'
        self.防具类型 = '重甲'
        技能列表 = []
        技能序号 = {}
        i = 0
        while i >= 0:
            try:
                tem = eval('技能'+str(i)+'()')
                tem.基础等级计算()
                技能序号[tem.名称] = i
                技能列表.append(tem)
                i += 1
            except:
                i = -1
        self.技能栏 = 技能列表
        self.技能序号 = 技能序号
        self.buff = 1.79

        super().__init__(equVersion)

    def set_skill_info(self, info, rune_except=[], clothes_pants=[], rune_start_lv=15) -> None:
        return super().set_skill_info(info, rune_except, clothes_pants, rune_start_lv=15)

    def 技能队列设置(self, setinfo):
        self.技能队列 = []
        for item in setinfo:
            self.技能队列.append({
                '名称': item['name'],
                '无色消耗': 1 if (item['name'] == '伏虎霸王拳' and self.get_skill_by_name("狂·霸王拳").等级 > 0) else self.get_skill_by_name(item['name']).无色消耗,
                '倍率': 1.0,
                '等级变化': 0,
                'CDR': 1.0,
                '恢复': 0,
                '形态': item.get('mode', '')
            })

    def 站街力量(self):
        return max(super().站街力量(), super().站街智力())

    def 站街智力(self):
        return self.站街力量()

    def 面板力量(self):
        return max(super().面板力量(), super().面板智力())

    def 面板智力(self):
        return self.面板力量()

    def 技能倍率加成(self, min: int, max: int, x: float, exc=[], type="all",excName=[]) -> None:
        for i in self.技能栏:
            if i.所在等级 >= min and i.所在等级 <= max and i.所在等级 not in exc and i.名称 not in excName:
                if i.是否有伤害 == 1:
                    if type == "all" or (type == "active" and i.是否主动 == 1):
                        i.倍率 *= (1 + x * self.技能伤害增加增幅)
                if type == "all" and i.名称 == "狂·霸王拳" and (min == max == 40):
                    i.额外倍率 *= (1 + x * self.技能伤害增加增幅)

    def 伤害计算(self):
        data = super().伤害计算()
        伏虎霸王拳 = data['skills'].get("伏虎霸王拳", None)
        被动加成 = self.get_skill_by_name('狂·霸王拳').加成倍率('')
        if 伏虎霸王拳 == None or 被动加成 == 1:
            return data
        data['skills']['狂·霸王拳'] = 伏虎霸王拳
        del data['skills']['伏虎霸王拳']
        return data
